/**
 * 
 */
package kr.co.insoft.driver.amazon.model;

import kr.co.insoft.driver.model.ImageModel;

import com.amazonaws.services.ec2.model.Image;

/**
 * @author IN-SOFT Inc. GoodwillDD(sylee@in-soft.co.kr)
 * 
 */
public class AmazonImageModel extends ImageModel {
	/**
	 * 
	 */
	private static final long serialVersionUID = 4383386359903853725L;
	String architecture;
	String description;
	String imageLocation;
	String imageType;
	String ownerId;
	String name;
	String kernelId;
	String platform;
	String hypervisor;
	String ramdiskId;
	Boolean publicValue;
	String virtualizationType;

	public AmazonImageModel(Image image) {
		super.setImageId(image.getImageId());
		this.architecture = image.getArchitecture();
		this.description = image.getDescription();
		this.imageLocation = image.getImageLocation();
		this.imageType = image.getImageType();
		this.ownerId = image.getOwnerId();
		this.name = image.getName();
		this.kernelId = image.getKernelId();
		this.platform = image.getPlatform();
		this.hypervisor = image.getHypervisor();
		this.ramdiskId = image.getRamdiskId();
		this.publicValue = image.getPublic();
		this.virtualizationType = image.getVirtualizationType();
	}

	/**
	 * @return the architecture
	 */
	public String getArchitecture() {
		return architecture;
	}

	/**
	 * @param architecture
	 *            the architecture to set
	 */
	public void setArchitecture(String architecture) {
		this.architecture = architecture;
	}

	/**
	 * @return the description
	 */
	public String getDescription() {
		return description;
	}

	/**
	 * @param description
	 *            the description to set
	 */
	public void setDescription(String description) {
		this.description = description;
	}

	/**
	 * @return the imageLocation
	 */
	public String getImageLocation() {
		return imageLocation;
	}

	/**
	 * @param imageLocation
	 *            the imageLocation to set
	 */
	public void setImageLocation(String imageLocation) {
		this.imageLocation = imageLocation;
	}

	/**
	 * @return the imageType
	 */
	public String getImageType() {
		return imageType;
	}

	/**
	 * @param imageType
	 *            the imageType to set
	 */
	public void setImageType(String imageType) {
		this.imageType = imageType;
	}

	/**
	 * @return the ownerId
	 */
	public String getOwnerId() {
		return ownerId;
	}

	/**
	 * @param ownerId
	 *            the ownerId to set
	 */
	public void setOwnerId(String ownerId) {
		this.ownerId = ownerId;
	}

	/**
	 * @return the name
	 */
	public String getName() {
		return name;
	}

	/**
	 * @param name
	 *            the name to set
	 */
	public void setName(String name) {
		this.name = name;
	}

	/**
	 * @return the kernelId
	 */
	public String getKernelId() {
		return kernelId;
	}

	/**
	 * @param kernelId
	 *            the kernelId to set
	 */
	public void setKernelId(String kernelId) {
		this.kernelId = kernelId;
	}

	/**
	 * @return the platform
	 */
	public String getPlatform() {
		return platform;
	}

	/**
	 * @param platform
	 *            the platform to set
	 */
	public void setPlatform(String platform) {
		this.platform = platform;
	}

	/**
	 * @return the hypervisor
	 */
	public String getHypervisor() {
		return hypervisor;
	}

	/**
	 * @param hypervisor
	 *            the hypervisor to set
	 */
	public void setHypervisor(String hypervisor) {
		this.hypervisor = hypervisor;
	}

	/**
	 * @return the ramdiskId
	 */
	public String getRamdiskId() {
		return ramdiskId;
	}

	/**
	 * @param ramdiskId
	 *            the ramdiskId to set
	 */
	public void setRamdiskId(String ramdiskId) {
		this.ramdiskId = ramdiskId;
	}

	/**
	 * @return the publicValue
	 */
	public Boolean getPublicValue() {
		return publicValue;
	}

	/**
	 * @param publicValue
	 *            the publicValue to set
	 */
	public void setPublicValue(Boolean publicValue) {
		this.publicValue = publicValue;
	}

	/**
	 * @return the virtualizationType
	 */
	public String getVirtualizationType() {
		return virtualizationType;
	}

	/**
	 * @param virtualizationType
	 *            the virtualizationType to set
	 */
	public void setVirtualizationType(String virtualizationType) {
		this.virtualizationType = virtualizationType;
	}

}
